═══ 1. How to use FM/2's help ═══ The best way to use FM/2's help is to look at the Contents (which you'll get if you press CTRL+F1 at the main window). To find something on a specific topic, click the Search button at the bottom of the help window and enter some text. For a couple of examples: To find out about changing a volume label, enter "Label" as the "Search for:" text, check the "All sections" checkbox, then press [Enter]. To find out how to open a new FM/2 window, enter "Open" as the "Search for:" text, check the "All sections" checkbox, then press [Enter]. If you'd like a printout of any of the topics in the online help, click the Print button at the bottom of the help window. If you're stuck in a dialog, click that dialog's Help button. That will usually take you directly to appropriate help. One note of caution: if you call up help for a dialog, be sure to dismiss the help before dismissing the dialog. Many of the dialogs run in threads other than thread 1, and there's a long-standing OS/2 bug that causes weird behavior if you do it the other way around to a dialog run in a thread other than thread 1. Trust me. So, if you're totally new to FM/2, how to get started? First, run the OS/2 Tutorial if you need help on the basics of using a mouse in general or using one with OS/2 in particular. Next, read the help section titled Terminology so we'll understand each other a bit better. Then plunge into the General Help topic to find out how to look at, Move, Copy, Rename and Compare files and directories (the basics). That will get you started, and we'll give you hints along the way about other places you might like to look (like Hints :-) when you're ready. Command line help is in the READ.ME file that accompanied the archive, since you should have read that before trying to start FM/2. You did, didn't you? There is one thing you should keep in mind about FM/2. FM/2 is extremely powerful and has a lot of features, but you don't have to use or even know them all. Most people will use only a few of FM/2's features on a regular basis (and not everyone will use the same combination), and that's fine -- find what works best for you and use it. If you find yourself needing some other feature, call up the help, find it, and use it -- it'll be there whenever you need it. But don't feel that, somehow, by not using every little nook and cranny of the program that you're missing out on something. The idea is to use what you need; pick your tools from the arsenal and get some work done. On the other hand, always assume that there's a way to do what you want with FM/2 (chances are good that there is), and ask the help window to Search for it. If you can't find it there, check into the CIS OS2SHARE forum for help. ═══ 2. Terminology ═══ Some definitions: GUI = Graphical User Interface WPS = WorkPlace Shell, OS/2's GUI PM = Presentation Manager, OS/2's graphical supersystem B1 = Mouse button 1, usually the left button B2 = Mouse button 2, usually the right button B3 = Mouse button 3, usually the middle button. Not all mice have three buttons. OS/2 will let you redefine the buttons using the WPS' Mouse object in the System Setup folder. Chord = Pressing B1 and B2 simultaneously Context menu = a popup menu obtained directly on an object of interest by clicking B2 while the mouse pointer is over the object. Context menus usually have options tailored for the specific object. Pulldown menu = the action bar menu just under the title bar of a window. If you don't know what a title bar is, run the OS/2 tutorial. System menu = the icon at the top left of most PM main windows. You can close a window by double-clicking the System menu icon with B1. Click once and you get a menu (called, oddly enough, the system menu). Toolbar = an array of buttons, usually with pictures on them, that you can click with your mouse to cause commands to be activated -- a sort of menu for illiterates. Toolbox = a collection of buttons in a toolbar. FM/2 allows you to have several toolboxes which you can load into the toolbar as desired. Dialog = a specialized input or informational window that's transient. You use it, then it goes away. Dialogs generally have their own specialized help available via a Help button. Direct Editing = a method of changing the text of an object, as when you change the name of an object on the WPS by pointing at it, holding down the ALT key and clicking the text with B1. FM/2 supports direct editing of file system object names as well as Subject and Longname fields in Details view. Default action = what happens when you double-click an object in a container (or put the cursor on it with the arrow keys and press [Enter]). Accelerator keys = key combinations that allow you to quickly give a program a command without going through menus or toolbars. For example, FM/2's accelerator key to get help is CTRL+F1 (usually written ^F1 -- ^ is shorthand for CTRL). Drive Tree = the special window that's always open in FM/2 displaying your drives in "tree" format. If subdirectories are available, there will be a "+" sign to the left of the drive which you can click to show the subdirectories. Note that floppy drives (A: and B:) aren't checked for subdirectories until you access them. Double-clicking a drive or directory in the Drive Tree opens a Directory Container or switches the current Directory Container to "look" into that directory. Directory Container = a special window that "looks" into a particular directory and shows you what's in it. Archive Container = another special window that "looks" into an archive file and shows you what's in it. Collector = yet another special window that serves as a temporary storage place for file system objects you place into it. Objects in the Collector are a little like WPS Shadows in that they take up no additional space on your drives -- they just represent the objects so you can manipulate them. Filter = what you do when you selectively remove some of the file system objects from a container by giving filemasks and/or attribute masks to "filter" what's displayed. Filtering affects only what shows; the files and directories remain on the drive. Mask = a filemask that can contain wildcard characters (* and ?) and select one or more files. In FM/2, filemasks can usually contain multiple masks separated by semicolons. Current object = the object upon which commands will act (also called the cursored object). The current object in a container is indicated by a dotted outline around the object. The current object may or may not also be highlighted. There can only be one current object in a container. Highlighted objects = objects in a container which are indicated by a different color (usually darker) background. If the current object is also highlighted, commands affect all highlighted objects. Tree view = a container view similar to an inverted tree, with roots at the top and leaves at the bottom. The FM/2 Drive Tree is an example of this sort of view, as is the default view of an OS/2 WPS Drive object. Icon view = a container view showing the object's name below the object's icon. Name view = a container view showing the object's name beside the object's icon. Text view = a container view showing only the object's name. Details view = a container view showing full object information in rows. A detail container is split into two sides with one vertical scrollbar serving both sides, and two separate horizontal scrollbars. MLE = Multi Line Edit control. This is something like a text editor. They can (and do) come in all sizes. ═══ 3. General Help ═══ FM/2's main purpose is to show you what's on your file system and let you sling what's there around. Here we'll cover the basics. Some familiarity with OS/2's WPS (WorkPlace Shell) is assumed. If you need refreshing, run the OS/2 Tutorial. There are several ways to view a directory with FM/2, just as there are with the WPS. Icon, Name, Text and Details views all offer different perspectives into the directory being "looked at" (see Terminology). Views showing icons can use full-sized icons or smaller "mini-icons" to save space. Details view can show a great deal of information about file system objects, and you can customize what is shown with the Details Setup submenu (under the Views menu or a Directory Container window's context menu). You can also place some limits on the amount of detail that FM/2 loads from the file system with the Toggles page of the Settings notebook. This can speed up FM/2's scanning of directories but can also make for duller screens and less information being presented to you. My advice to you is to enjoy the bells and whistles OS/2 and PM provide. Take a moment to set up the look of your Directory Container windows to match your taste -- everyone likes something different. Then meet me back here and we'll talk about manipulating those objects you see... As we talk about manipulating objects, keep firmly in mind the concepts of "current object" and "highlighted objects" (see Terminology). The current object is the one on which commands act (it has the dotted outline around it). If the current object is also highlighted, all highlighted objects will be affected. Renaming file system objects: The simplest way to rename a file system object is to point at it with the mouse cursor, hold down the ALT key, and click the text of its name. OS/2 produces a mini MLE text entry field where you can type in a new name (this is Direct Editing). When finished, click the object and a rename is performed. Note that you can even move the object to another directory when you do this. (Also note that in Details view you can direct-edit the Subject field to change an object's Subject and the Longname field to change an object's Longname.) Using this method will not allow you to overwrite an existing file. You can use drag and drop (as detailed below for Move) or the menu command Rename or the toolbar to allow overwriting. Moving file system objects: There are several ways to move a file system object. The best and most intuitive is drag and drop. Using this method, you "grab" the file system object by pressing and holding B2 while the mouse pointer is over the object, then begin to move the mouse (still holding B2). The object's icon should begin to move with the mouse pointer. " Drag" this icon to where you want to move it (for instance, if you want to move a file from C:\ to D:\, drag the file to the Drive Tree's D: object). When the object is where you want it, release B2 and the move is done. When dragging an object into a Directory Container, remember that to place it into the directory into with the Directory Container "looks" you need to drop it on container "whitespace" (a part of the container not occupied by an object). For convenience, the two recessed status areas at the top of the container are considered whitespace. If you get confused when dragging object(s), press the F1 key. This will give you some information about what you're doing. Pressing the Escape key will abort the drag. Note that you can't move a file or directory onto another file, only into a directory (moving into container whitespace in a Directory Container window is the same as moving into the directory the Directory Container "looks" into, and a minimized Directory Container window is "all whitespace"). Also note that the object you grab becomes the current object, and if it's also highlighted you'll drag all highlighted objects (you'll see visual feedback to this effect). You could, of course, also select "Move" from the Files menu or a context menu, or click the Move toolbar button, or type the accelerator key ^m (hold the control key down and type "m"). In this case, you'll get the Walk Directories dialog where you can enter a target directory. Copying file system objects: The procedure for copying file system objects is very similar to that for moving them. When you begin to drag the object, and until you release it, hold down the control (CTRL) key. You'll notice that the dragged icon is "ghosted" to give visual feedback that a copy, not a move, is being performed. Note that you can copy a file onto an archive file as well as into a directory. You can also "clone" a file by dropping it into the directory where it already resides -- you'll get a rename dialog that will allow you to change the name, creating a file exactly like the other with a different name. As for move above, there is a "Copy" menu item and a toolbar button, and ^c is the accelerator key. There is one other type of drag and drop operation called a "link drag." To link drag, hold down the control and shift keys while dragging. You'll see a "rubber band line" extend from where you grabbed the icon to the mouse pointer as a visual cue. Link dragging is usually used within FM/2 to do compare operations (see also Link Sets Icon toggle). What you drag will be compared to what you drop it on. Note, however, that if you drag to a WPS object (like the desktop or other folder), OS/2's version of a link drag is performed, which usually results in a shadow object being created. Double-clicking an object in a Directory Container window causes a default action to take place. What that action is depends on the type of object and how you've configured FM/2. Here's a breakdown: If the object is a directory, the Directory Container switches to look into that directory. If it's a file, FM/2 first checks to see if you've assigned any Associations that match the filename and signature (if applicable). Next, FM/2 tries to view the file as an archive. If it's not an archive, FM/2 checks to see if the file's an executable and runs it if so. Then INI and HLP files are checked by extensions and viewed as such. If all else fails, FM/2 views the file using the configured or internal viewer. Other commands are accessed via pulldown or context menu commands or toolbar buttons. You can read about them by selecting the highlighted words "context menu" in this paragraph. But you now know how to perform the file system maintenance basics: Move, Copy, Rename and Compare. You are now, as the Smothers Brothers said, educated. ═══ 4. Files Menu ═══ The Files pulldown menu displays the same menu that would be obtained as a context (popup) menu over the current object in the current window. If you select the Files menu when a window that doesn't use it is active, you'll see "n/a" (not applicable). Generally speaking, it's best to leave the Files menu for folks who either don't have a mouse or don't really understand how OS/2 works, and instead work from the context menus. ═══ 4.1. Commands submenu ═══ Commands are programs that can be run on selected objects by picking the programs by an assigned title from a dynamically built submenu of FM/2's Files pulldown menu. When commands are displayed in the submenu, visual queues are given as to the behavior of a given command. Commands that are checked will run once for each selected file. Commands that are framed will prompt the user to edit and accept the command line before running. FM/2 provides accelerator keys for the first twenty commands in the submenu. The accelerators are listed beside the command's title for reference. This provides a "macro key" capability. Don't overlook the power of Commands. This is a simple way of extending FM/2 to do things that it can't do on its own, to automate things, and to merge those old command line utilities with a PM selection shell (FM/2). ═══ 5. Views Menu ═══ The Views pulldown menu displays the same menu that would be obtained as a context (popup) menu for the current window (but not for any objects in the window -- in other words, a context menu requested over whitespace). If you select the Views menu when a window that doesn't use it is active, you'll see "n/a" (not applicable). Generally speaking, it's best to leave the Views menu for folks who either don't have a mouse or don't really understand how OS/2 works, and instead work from the context menus. ═══ 6. Utilities Menu ═══ FM/2 offers several utilities to make your life a little easier: Collector Undelete Files Kill Processes Instant Batch File Command Line INI Viewer View Bookshelf ═══ 6.1. Collector ═══ The Collector is a temporary place to hold objects that you want to manipulate later; it allows you to temporarily group objects regardless of where they're physically stored in the file system. No physical (disk) storage is used; the Collector just holds the objects (something like WPS shadows) until you're ready to do something with them. You might think of it as an additional clipboard containing names of file system objects. Note that objects in the Collector, unlike objects in main tree and directory containers, show their full pathnames. You can drag file system objects from and to the Collector. Be careful where you drop the objects; directories and files already in the Collector are "targets." If you drop on a directory, the files are moved or copied to the directory, not into the Collector. The Collector allows you to manipulate the files it contains just as you would in a main tree or directory window. Popup menus are available just as they are in a main window. The popup for the collector container obtained over container whitespace allows clearing the container and collecting files from the clipboard (a good way to import a selection from some other program that might save a list of files, one file per line). Additionally, the pulldown menu gives you access to a Seek and scan function. This leads to a dialog that lets you search for and Collect files based on filemasks and text content. ═══ 6.1.1. Seek and scan ═══ This dialog allows you to search for files (by filemasks and, optionally, text within the files) and Collects the files found. In the Filemasks entry field you can enter one or several filemasks. To enter multiple masks, separate them with semi-colons. Example: "C:\*;D:\*.TXT". In the Search text entry field you can enter text that must be found for the file to match. All files matching the filemask(s) are searched for this text. If no text is entered, a simple file find is performed. Simple regular expressions are supported. These can be briefly summarized: '*' matches any string '?' matches any single character '['XYZ']' matches any of X, Y or Z ' ' matches 0 or more whitespace characters C matches C The Include Subdirs checkbox controls whether the search extends into subdirectories. If the box is checked, subdirectories are searched. The Absolute checkbox disables regular expressions in the Search text entry field. The Case Senseitive checkbox, if checked, makes text searches case sensitive. Otherwise they are not ('c' matches 'C' and 'c'). The Say files as found checkbox tells FM/2 to display the filenames it finds based on the filemasks as it encounters them, if checked. The Search files checkbox, when checked, tells FM/2 to look inside files for the text in the Search text entry field. This has no effect if no search text was entered. The Search EAs checkbox, when checked, tells FM/2 to look at the text EAs of files for the text in the Search text entry field. This has no effect if no search text was entered. The Larger entry field can be used to find files larger than the number of bytes input (zero means all files). The k button next to the entry field multiplies the value by 1024 for you to make kilobytes instead of bytes. The Smaller entry field works the same except that it causes files smaller than the number of bytes input to be found. When used together (both fields are nonzero), files found will be greater than the Larger field's value and less than the Smaller field's value. The Newer and Older entry fields work similarly. When non-zero, these fields cause the search to find only files newer or older than the number of days entered. The m buttons multiply the value by 30 for you to make "months" instead of days. The AllHDs button prompts you for a single simple filemask (one without a drive or path) then builds a Filemasks string that will search all hard drives for that mask. The file search is performed using the current Collector Filter's attribute values. Click Okay when ready to search, or Cancel to exit without searching. Quicky instructions: type a mask into the Filemasks entry field (for example, "C:\*.BAK") and press [Enter]. ═══ 6.2. Undelete Files ═══ This leads to a dialog that interfaces with UNDELETE.COM to allow you to undelete files. The drive that will be operated on is determined by the highlighted object in the directory tree. This dialog filters out files that already exist on the disk. You can always go directly to UNDELETE.COM if you have the need for more control. This is provided only for convenience. ═══ 6.3. Kill Processes ═══ This leads to a dialog that allows you to kill most renegade processes. If you run into a window that just won't close, or one that hides itself but doesn't quite go away, this may let you kill the hung process. ═══ 6.4. Instant Batch File ═══ This leads to a dialog that lets you quickly hack together a batch (command) file and run it (the currently highlighted tree directory will be its default directory). The command file isn't saved; think of it as an "extended command line" which allows you to enter more than one line at a time (for instance, when several tests must be made). ═══ 6.5. Command Line ═══ This brings up a windowed OS/2 command line. F9 is the accelerator key for this command. ═══ 6.6. INI Viewer ═══ INI files are a form of data file that OS/2 provides to applications and utilizes itself. This viewer dialog allows you to take a peek inside them. Two special INIs are used by the system. They are the User INI (usually OS2.INI) and the System INI (usually OS2SYS.INI). Both are usually located in the \OS2 directory of your boot drive. FM/2 will tell you where they are when you view them. Applications normally use private INI files named after the application. For example, FM/2's INI is FM3.INI and its executable is FM3.EXE. A record in an INI is composed of three parts: An application name, a keyname, and data. This three-part format is represented in the dialog by three listboxes. When you choose an application name and a keyname, you see the data associated with them. This dialog allows you to delete an application name from an INI (deleting all keynames and data associated with it) with Edit->Delete Application, or to delete individual keynames, deleting the data associated with them with Edit->Delete Keyname. The Files->User Profile command loads the user INI (usually OS2.INI) and the Files->System Profile command loads the system INI (usually OS2SYS.INI). The Files->Other Profile command allows you to pick an INI file to load. The Files->Refresh command will refresh the contents of the listboxes from the INI file on disk; handy if a background process might modify it. The Utilities->Backup Profile creates a backup of the current profile. You get to specify the filename. The Utilities->Change System Profiles command lets you change the User and System profiles that OS/2 uses. The Utilities->Replace System Profiles command lets you replace the default system profiles with new profiles; the old files are physically overwritten. You can also drag from and to the top two listboxes in this window. If you drag from the left window, you drag the current application name, all its keynames, and all the data associated with the keynames. If you drag from the right window, you drag the current application and keynames, and all the data associated with the keyname. You can either move or copy the record(s) using the standard key modifiers (you did read the General Help topic, didn't you?). This window is reached via the Utilities pulldown menu on FM/2's main window, or by selecting (double-clicking) an INI file in a directory window, or by starting it from the FM/2 folder. The double-click behavior can be changed by specifying an association for *.INI under FM/2's main Config->Edit Associations pulldown. You may wish to do this, as FM/2's INI Viewer isn't meant to be the sort of full-featured dedicated INI maintenance application that, for example, INIMaint is. You can alternatively specify a Command using FM/2's main window menu Config->Edit Commands to run a more powerful INI editor against selected files as desired, using this internal viewer for browsing. ═══ 6.6.1. Adding an INI record ═══ To add an INI record, fill in the three entry fields on the screen. The appname and keyname pair, together, should form a unique ID, or you'll end up replacing existing data rather than adding new data. Then click Okay. Click Cancel to abort. ═══ 6.6.2. Changing OS/2's INIs ═══ FM/2 lets you change the INIs that OS/2 uses while OS/2 is still active. This, together with the Backup Profile command, allow you to create and use alternate profiles. Note that this doesn't change the physical INI files, it just points OS/2 at the new files; when you reboot, the files specified in CONFIG.SYS are used. There are a couple of potential uses for this function. You might use it to maintain different desktops and switch between them. You might use it to allow you to copy backed up profiles to OS2.INI and OS2SYS.INI (the default OS/2 profiles -- do this by first switching to a different set of profiles, then copying your backups onto OS2.INI and OS2SYS.INI, then restoring OS2.INI and OS2SYS.INI as the system profiles. You can't do this normally as the system profiles are readonly and can't be overwritten.). Note that when the change occurs, OS/2 will restart the WPS. It's recommended that you back up your system INIs before using this and shut down all other running processes first. ═══ 6.6.3. Replacing OS/2's INIs ═══ This dialog physically replaces the OS/2 system INIs with the INI files you select. The change is permanent. Note that when the change occurs, OS/2 will restart the WPS (twice). It's HIGHLY recommended that you back up your system INIs before using this and shut down all other running processes first. (Use of this after having used the Change System Profiles command probably won't do what you expect unless you first change back to the system defaults.) ═══ 6.7. View Bookshelf ═══ FM/2 presents a listbox containing all the .INF files found in the directories listed in your BOOKSHELF environment variable (see SET BOOKSHELF= in CONFIG.SYS). You select the .INF file(s) you want to view, then click the View button. If you selected more than one .INF file, FM/2 calls VIEW.EXE in such a way that all the files are presented at once (a single contents page appears listing the contents of all the .INF files). Warning: Don't select more than one filename with the same title (left column of listbox) -- View.exe will choke if you do, and be unable to read any of the files. You can enter text into the entry field below the listbox, and FM/2 will try to find the first listbox entry with matching text as you go. If you click Select FM/2 will highlight all matching entries (hint: empty the entry field and click Select to unhighlight everything). If you click Filter FM/2 will remove all but highlighted items from the listbox (Rescan will refill the listbox). The AddDirs button will copy the contents of the entry field and add it to the directories listed in the BOOKSHELF environment variable. It should be in the same format as the HELP environment variable uses, fully qualified directory names separated by semi-colons. The next time you use the Bookshelf Viewer, FM/2 will remember this input and use it. This is an internal addition; your CONFIG.SYS and environment are not modified. When you're done with the dialog, press [ESCape] or click Cancel. Any open .INF files remain open until you close them (hint: F3 will close an .INF file). Note: this dialog is shared by the View Bookshelf and View Helpfiles commands. If you click on either while this dialog is up, the dialog is simply brought to the foreground. Close it if you want to switch function. (This doesn't apply if you started this from the Bookshelf Viewer object in the FM/2 WPS folder.) ═══ 6.8. View Helpfiles ═══ FM/2 presents a listbox containing all the .HLP files found in the directories listed in your HELP environment variable (see SET HELP= in CONFIG.SYS). You select the .HLP file you want to view, then click the View button. You can enter text into the entry field below the listbox, and FM/2 will try to find the first listbox entry with matching text as you go. The AddDirs button will copy the contents of the entry field and add it to the directories listed in the HELP environment variable. It should be in the same format as the HELP environment variable uses, fully qualified directory names separated by semi-colons. The next time you use the Bookshelf Viewer, FM/2 will remember this input and use it. This is an internal addition; your CONFIG.SYS and environment are not modified. When you're done with the dialog, press [ESCape] or click Cancel. Any open .HLP file will remain open until you close it. Note: this dialog is shared by the View Bookshelf and View Helpfiles commands. If you click on either while this dialog is up, the dialog is simply brought to the foreground. Close it if you want to switch function. (This doesn't apply if you started this from the Helpfile Viewer object in the FM/2 WPS folder.) ═══ 7. Config Menu ═══ FM/2 can be configured as you like it using the commands under this submenu. It is highly recommended that you step through the items in this submenu when you first begin to use FM/2, both to familiarize yourself with the available configuration options and to make FM/2 work the way you like it to work. To change fonts and colors, FM/2 uses the WPS Font and Color Palettes. The Config menu contains commands to call up these objects for you. This submenu affects general FM/2 behavior. Each class of container has its own configuration menu that allows you to set the type of view, filtering, and so on. To get the popup menu that controls the container's appearance, request a context menu while the pointer is over an empty area of the container, or select the Views pulldown submenu. Toolbar Associations Commands Edit Archiver Data Settings notebook ═══ 7.1. Toolbar ═══ The toolbar is a collection of buttons that invoke some of the commands in the pulldown or popup menus. Placing the mouse pointer on a button and pressing and holding B2 displays brief help for the button on the titlebar. Some of the buttons will allow objects to be dragged onto them; for example, you can drag objects onto the trashcan to delete them. Note that the hotspot of the mouse pointer itself should be over the button before releasing, not the icon being dragged (icons are slightly offset from the mouse pointer to give better target visibility). Target emphasis is provided in the form of a black outline around the button, and the arrow pointer turns into a hand when above a toolbox icon. This toolbar submenu is a conditional cascade menu, meaning that if you click other than on the boxed arrow a default command is executed (the toolbar is toggled off and on), but if you click on the boxed arrow you get a submenu of items you can select (the other choices are Text Toolbar, which will cause the toolbar to appear as "normal" buttons with text on them, or Toolbar Titles, which will cause text to appear below the toolbar bitmap buttons). Toolbar buttons are user-configurable. To change the toolbar, click mouse button two (usually the right button) while the mouse pointer is over a button to pop up a context menu. You can get the "Load Toolbox" dialog by clicking B2 on a blank area of the toolbar, and the "Add Button" dialog by chording on a blank area of the toolbar. For advanced/curious users: Information on what buttons are in the toolbar is kept in a file named FM3TOOLS.DAT. This file is an ASCII (plain text) file that contains information defining the toolbar. The file contains comments that explain its format. FM/2 allows you to create customized toolboxes that can be loaded as required to provide toolboxes for specific activities. ═══ 7.1.1. Reorder Tools ═══ This dialog, accessed from the context menu of a tool button, allows you to rearrange the order of the toolbar's tool buttons. You take selected items from the left listbox and Add them to the end of the right listbox with the Add>> button. When you've moved everything to the right listbox, click Okay. Click Cancel if you change your mind. In reality, you don't need to move everything to the right listbox. You can move only what you want moved to the top of the list, then click Okay. Anything remaining in the left listbox is added to the end of what's in the right listbox. The <.TLS). By starting with the full toolbar, you'll spend more of your time deleting buttons you don't want (a trivial task) and less adding buttons. ═══ 7.2. Settings notebook ═══ FM/2's internal Settings notebook lets you fiddle with some of the global toggles and variables used to control how FM/2 behaves. This is called up via the Config->Settings... pulldown menu item. Some container types have their own individual settings, usually available via a popup menu requested on container whitespace (or the Views pulldown menu). Note that settings changes don't take effect unless and until you close the notebook by clicking the Okay button. See also: Toggles page Window toggles page External programs/paths page Directory Container views page Directory Container sort page Collector Container views page Collector Container sort page ═══ 7.2.1. Toggles page ═══ The checkboxes on this page are on/off switches. The items are checked if they are on, not checked if they are off. Following is a description of the available toggles: Confirm delete controls whether FM/2 will ask you to confirm the deletion of files (deleting directories always requires confirmation). It is recommended that you leave this option on; FM/2 will let you confirm all files on which you're acting from one dialog, so it has minimal impact and provides a safety net. Uppercase names and Lowercase names control how FM/2 pretreats filenames before inserting them into the container. The default is not to change the case of the filenames at all. Changing these toggles will have an effect on the next rescan. If Unhilite after action is on, highlighted objects in the container are unhighlighted after you perform some command on them. The Verify disk writes toggle turns system-level write verification on and off. This is like typing VERIFY ON or VERIFY OFF at a command line. Normally FM/2 updates the container as things change; for instance, if you're deleting several files, the container is updated after each file is deleted. If you uncheck Immediate updates, FM/2 updates the container after an atomic action completes (i.e. after all files moved by one operation have been moved). This speeds up processing but allows the container to be temporarily "out of synch" with the real state of affairs. If Load Subjects is checked, FM/2 loads object descriptions from their standard WPS .SUBJECT EAs during scans. If you change the state of this toggle, you'll need to rescan to get the change to show up in FM/2's containers. Note that only the Details view shows Subjects. Subjects may be direct-edited when showing in the container. You can also pick Subject from a context menu, whether Subjects are being loaded during scans or not, to view and optionally change the object description. You can turn this off to marginally increase scanning speed. If Load Longnames is checked, FM/2 loads the .LONGNAME extended attribute for non-HPFS drives. This attribute usually contains a long name for objects that should be restored if the object is moved to an HPFS drive. As for Subject, Longnames are only shown in the Details view. You can turn this off to marginally increase scanning speed. If Don't load file icons and/or Don't load directory icons are checked, FM/2 won't load the icons of objects from the file system but instead uses defaults. Although this can speed up scanning, it makes for boring containers. This is PM, folks, enjoy the bells and whistles! The Follow Drive Tree toggle causes FM/2 to "follow" the current selected directory in the Drive Tree (when you move the cursor in the tree, the directory container changes to show the files in that directory without you having to press [Enter] or double-click the directory). The Don't move my mouse! toggle keeps FM/2 from moving your mouse (to place it in the center of a popup menu or over the Okay button in some dialogs). Some people like the help, others don't. Take your pick. The Double-click Opens toggle, if on, causes FM/2 to always open a new Directory Container window when a Drive Tree directory is double clicked. Link Sets Icon changes the action of a link-drag. If this toggle is set, a link drag causes FM/2 to try to set the icon of the target to the icon of the first dropped object (if the first dropped object has no .ICON EA and is not an icon file, the target's icon is reset. Note that OS/2 sometimes buffers this info and an icon change may not show up immediately). If not set, a link drag causes FM/2 to do a compare of the target with the dropped objects. If Default action Copy is checked, FM/2's windows perform a copy rather than move by default (note the highlighting on the mouse pointer as your cue). Instead of pressing the CTRL key to change a drag from a move to a copy, you'll need to press the Shift key to change a drag from a copy to a move (don't ask me why). Note that this is the opposite of the standard OS/2 behavior, so know what you're doing. I remind you that pressing F1 when you have a target in an FM/2 window will display some help on what the drag command would have performed. FM/2 usually performs copy and move actions at the lowest "normal" priority available. If you'd like FM/2 to use a true "idle" priority, check the Idle Copy toggle. Warning: if a DOS program is running, even in the background, idle priority threads slow way down. Performance at true idle with DOS programs running may not be acceptable. If the Show archiver activity toggle is checked, FM/2 runs archiver windows in the foreground. Normally it runs them in the background, minimized, so you'd have to use the task list to pull them to the foreground if you want to see them. If you check VTree->WPS folder, when running VTree a double-click on a directory will open a WPS folder instead of an FM/2 Directory Container. ═══ 7.2.2. Window toggles page ═══ The Save state of dir windows toggle, if checked, causes FM/2 to "remember" the directory windows that are open when you close FM/2 so that it can open them again when you restart FM/2. If you turn this on, be sure to play with the Free Tree and Autotile toggles under the Windows menu to acheive the desired effect (everyone will want a different effect). You'll probably want to omit any directories from the command line if you turn on this toggle. If you turn on Autotile (it's on by default), FM/2 will retile the windows in many cases to try to keep things neat. If you check the Free Drive Tree toggle, FM/2 will allow you to move the Drive Tree Container. Otherwise it "pins" it in the upper left corner of the client window. If Split Status is checked, you get two status lines at the bottom of the FM/2 window instead of one. The left status line typically contains information about the current container, the right about the current object in the container. The Multiple select cnrs and Extended select cnrs checkboxes control the type of selection in some new containers (existing containers are not affected). Collector, Directory Container and Archive Containers created after these settings are changed will have the type of selection desired (note: unhighlighting both results in a single select container -- probably not desirable). The default is to have both types of selection active in containers. Normally FM/2 leaves a space below the Drive Tree just the right size for a minimized window. Checking the No space under Tree toggle causes FM/2 to start without this space below the Drive Tree. ═══ 7.2.3. External programs/paths page ═══ This page allows you to set the generic external programs that FM/2 uses to view files, edit files, compare files and scan archives for viruses. It also has a couple of other fields discussed below. The Find button can be clicked to bring up a dialog that will let you point-and-click on a file or directory name that will be imported to the current entry field. For example, if you're in the Editor entry field and click Find, you'll get a standard OS/2 open dialog which you may use to find your editor executable. FM/2 uses an internal MLE viewer/editor if you have no viewer or editor configured here. It's recommended that you fill these fields in with whatever viewer and editor you like rather than use the internal. The Ext. Path Otherwise, FM/2 assumes you want to place extracted files into the same directory in which the archive resides (though it'll let you override manually). The Printer field lets you specify the device to which FM/2 will print text files. By default it is PRN (LPT1). You can also just drag a file to a system printer object; the FM/2 printer is really intended only for situations where the WPS printers are unavailable. (The Find button doesn't work for this field.) Examples: Editor: "EPM.EXE %a" or "Q.EXE %a" or "E.EXE %a" or "CMD.EXE /C START /C /FS EMACS.EXE %a" Viewer: "LSTPM.EXE %a" or "LIST2.EXE %a" Compare: "COMP.COM %a" or "CMD.EXE /C MYCOMP.CMD %a" Virus: "OS2SCAN.EXE %p /SUB /A" The following replaceable "metastrings" can be used in command lines: %$ drive letter %a full pathnames %c command processor specified in %COMSPEC% %f filenames, no paths %e extensions %p path (d:\directory) %% a percent sign ═══ 7.2.4. Directory Container views page ═══ This settings page lets you set the type of view that will be used in new Directory Container windows. Directory Containers that are already open won't be affected. Icon In Icon view, the object's name appears below its icon. Name In Name view, the object's name appears beside its icon. Text Text view is the fastest view for a container to maintain, but provides the least information on the objects it contains. Detail Details view shows a great deal of information on the objects it contains, including file sizes, dates, and times, but it is the slowest view for a container control to maintain. Mini Icons is a toggle controlling whether icons are shown full size or in miniature in views that show icons. The Field Titles group (analogous to the Views->Details Setup submenu) allows you to control what is shown in a Details view. Each possible field in the details view is shown. If the field is checked, FM/2 will show it. If not, it won't. ═══ 7.2.5. Directory Container sort page ═══ This page lets you set the type of sort for Directory Containers. Directory Containers that are already open won't be affected immediately (see Resort context menu command), but will use the new sort type the next time they're resorted or rescanned. You can also tell FM/2 to always display directories ahead of or behind files. Note that Last access date and Creation date are only meaningful for HPFS file systems; FAT file systems do not track this information. The difference between Pathname and Filename is only apparent in the Collector. With the former, the entire pathname of the object is used to sort. With the latter, only the filename portion is used to sort. FM/2 maintains separate sort criteria for Drive Tree, Collector, Directory Container and Archive Container windows. This page affects only Directory Container sorting. The Collector has its own page; use a context menu or View pulldown menu for other container types (like the Drive Tree). ═══ 7.2.6. Collector Container views page ═══ This settings page lets you set the type of view that will be used in new Collector windows. If the Collector is already open it won't be affected unless you close and reopen it. Icon In Icon view, the object's name appears below its icon. Name In Name view, the object's name appears beside its icon. Text Text view is the fastest view for a container to maintain, but provides the least information on the objects it contains. Detail Details view shows a great deal of information on the objects it contains, including file sizes, dates, and times, but it is the slowest view for a container control to maintain. Mini Icons is a toggle controlling whether icons are shown full size or in miniature in views that show icons. The Field Titles group (analogous to the Views->Details Setup submenu) allows you to control what is shown in a Details view. Each possible field in the details view is shown. If the field is checked, FM/2 will show it. If not, it won't. ═══ 7.2.7. Collector Container sort page ═══ This page lets you set the type of sort for the Collector. If the Collector is already open it won't be affected immediately, (see Resort context menu command), but will use the new sort type the next time it's resorted or rescanned. You can also tell FM/2 to always display directories ahead of or behind files. Note that Last access date and Creation date are only meaningful for HPFS file systems; FAT file systems do not track this information. The difference between Pathname and Filename is only apparent in the Collector. With the former, the entire pathname of the object is used to sort. With the latter, only the filename portion is used to sort. FM/2 maintains separate sort criteria for Drive Tree, Collector, Directory Container and Archive Container windows. This page affects only Collector sorting. ═══ 7.3. Associations ═══ Associations are programs that are run when files matching specified filemasks (and optional file signatures) are selected (double-clicked). You can use this facility to cause editors specific to different datafile types to start when the datafile is selected. For instance, if you associate "*.ICO" with "ICONEDIT.EXE %a" the icon editor will be started with the selected icon file when you double-click an icon. Signatures provide a mechanism to further test a matching file to determine that it is the proper type. For example, all OS/2 .INF (information) files have the string "HSP" at position 0 of the file. By using signature "HSP" at offset 0 for the filemask "*.INF" and assigning the commandline "VIEW.EXE %a" to the association, any OS/2 .INF file will be read using VIEW when selected, but non-OS/2 files that have an .INF extension will not match this association. To add an association, fill in the entry fields and set the radio buttons and checkboxes that control session type as desired (these are explained in more detail in the help for Editing Commandline except for Prompt, which causes a dialog to appear that allows editing the command line before it is run), then click Add.. To delete an association, select it in the listbox, then click Del. To change an association, delete it, edit the entry fields, radio buttons and checkboxes, then add it. The Find button brings up a standard OS/2 open dialog that you can use to point-and-click at the desired executable file. It's pathname will be entered into the command line entry field. The Environment MLE control lets you enter environment strings for the program to inherit. Generally speaking, this is only for running DOS programs as any strings entered here are interpreted as DOS settings. For example, IDLE_SECONDS=5 would adjust the DOS setting IDLE_SECONDS to 5. Names of DOS settings are as shown in the Settings notebook for a DOS program. The following replaceable "metastrings" can be used in command lines: %$ drive letter %a full pathnames %c command processor specified in %COMSPEC% %f filenames, no paths %e extensions %p path (d:\directory) %% a percent sign ═══ 7.4. Editting Commands ═══ This dialog allows you to edit the commands that are available in the Commands submenu. To add a command, fill in the entry fields and set the radio buttons and checkboxes that control session type as desired (these are explained in more detail in the help for Editing Commandline, except for Each, which means that the command will be run once for each selected file, and Prompt, which means that the command will display a dialog that allows the user to edit the command line before running), then click Add.. To delete a command, select it in the listbox, then click Del. To change a command, delete it, edit the entry fields, radio buttons and checkboxes, then add it. The Find button brings up a standard OS/2 open dialog that you can use to point-and-click at the desired executable file. It's pathname will be entered into the command line entry field. The Environment MLE control lets you enter environment strings for the program to inherit. Generally speaking, this is only for running DOS programs where any strings entered here are interpreted as DOS settings. For example, IDLE_SECONDS=5 would adjust the DOS setting IDLE_SECONDS to 5. Names of DOS settings are as shown in the Settings notebook for a DOS program. The following "metastrings" can be used in command lines: %$ drive letter %a full pathnames %c command processor specified in %COMSPEC% %f filenames, no paths %e extensions %p path (d:\directory) %% a percent sign ═══ 7.4.1. Reordering Commands ═══ This dialog, accessed from the Edit Commands dialog, allows you to rearrange the order of Commands. You take selected items from the left listbox and Add them to the end of the right listbox with the Add>> button. When you've moved everything to the right listbox, click Okay. Click Cancel if you change your mind. In reality, you don't need to move everything to the right listbox. You can move only what you want moved to the top of the list, then click Okay. Anything remaining in the left listbox is added to the end of what's in the right listbox. The <Dialog or by chording on a blank portion of the main client window. Highlight the windows on which you want to act, then click the appropriate button. ═══ 10. Context menus ═══ Context menus are used extensively in FM/2, just as they are in the WPS. Context menus are requested by placing the mouse pointer over a desired object in a container (or over container whitespace) and clicking mouse button two (usually the right button). Commands that affect the container as a whole are found in context menus requested over whitespace (any empty area of the container). Commands that affect the objects within the container are requested over the object of interest. If an object is highlighted when a context menu is requested, the commands will usually affect all highlighted objects; otherwise, any commands will affect only the object over which the menu was requested (you'll see visual feedback to this effect). FM/2's Files menu shows the same menu that would be obtained if you requested a context menu over the current object. FM/2's Views menu shows the same menu that would be obtained if you requested a context menu over the current window's whitespace. When a menu command leads to a dialog, the command name is followed by dots (i.e. "Attributes..."). In cases where commands have accelerator key equivelants, the accelerator key is listed after the command (i.e. "View ^v", where ^ indicates that the CTRL key must be pressed with the 'v' key, or "Archive... ^A" which indicates that both the CTRL and SHIFT keys must be pressed with the 'a' key). Context menu commands affecting objects: (Note that not all commands are available for all objects on all drives) Attributes leads to a dialog that sets all selected objects' attributes and (optionally) date/time en masse. Rename allows you to rename objects. You are notified of conflicts as they occur. An easier method for renaming one object is to point at its text, hold down the ALT key, and click mouse button one. Delete deletes objects. If the Confirm Delete toggle is on or one or more directories are among the selected objects, you get a dialog showing the selected objects and asking you to confirm that you really meant what you said. In that dialog you have a chance to remove some of the objects. If you have Undelete enabled for the drive on which the objects reside, they may be recoverable. Permanent Delete deletes objects as above, but they will not be recoverable (which may make the deletion faster). It should be noted that when deleting directory objects, the file objects within the directory can never be recovered, but deleting all the file objects inside a directory (rather than the directory itself) allows things to be recovered if you use the Delete command above rather than this Permanent Delete command and have Undelete enabled (type HELP UNDELETE at a command line for more information on enabling Undelete). View views objects through the configured viewer. Edit edits objects with the configured editor. Print prints text files. It'd be a good idea to have a printer to which to print, and have configured it first, before trying to use this. If using the standard WPS, be sure you have a printer object configured for the device you've told FM/2 to use, or you may wind up with FM/2's printing thread blocked for eternity awaiting access to a nonexistent or inaccessible device. Actually, if using the standard WPS, it's recommended that you simply drag files to the printer object and drop them instead of using this command. Move and Copy move or copy objects. Drag and drop is recommended over using the menu commands for moving and copying. When using the menu commands, the Walk Drives dialog appears to allow you to select a target. Play multimedia attempts to play the objects via MMPM/2 using FM2PLAY.EXE (included with FM/2). Obviously, the objects must be multimedia objects (sound files, movies, midi files, etc.) for this to have the desired effect, and MMPM/2 must be installed in your system. Shadow builds WPS shadow objects on your desktop (or other selected folder) for selected object(s). You can also create Real Objects. Both these options are in a submenu called Create Objects. The Open submenu allows you to open an object's Settings notebook, open directories as WPS Folders, or open a new FM/2 Directory Container window for directories (the default for directories). Note that when WPS Folders are opened, they come up in the background. This is an OS/2 bug, and IBM has been notified. Archive allows you to build an archive containing the selected object(s). Extract allows you to extract files from selected archives. Save to clipboard allows you to save selected objects to the clipboard as a text list, one per line. This is a good way to transfer selections of files to other programs; for instance, you might copy a list of files to the clipboard and feed it to a terminal program to send the files over a modem or network. Save to list file lets you save selected objects as a list to a text file. Lists can include file sizes, subjects, etc. Extended Attributes allows you to view an object's extended attributes (EAs) and to edit and add text attributes. Subject allows you to give an object a description. This makes use of the same EA (.SUBJECT) that the WPS uses for object descriptions. Information brings up a dialog telling you everything you ever wanted to know about a file system object but were afraid to ask. If you select this from a drive object (root directory) in the Drive Tree container, you get a "drive information" dialog that lets you change the drive's label. Otherwise, you get a comprehensive dialog that, besides showing you all the pertinent information about the object, shows the object's icon. That icon is important. You can get a context menu on it, and you can drag other objects onto it to change the object's icon. If the object is an icon or pointer file (*.ICO or *.PTR) you can use it to change a system pointer (for instance, you could change OS/2's usual arrow pointer to a finger). Quick Tree appears in Directory Containers. You can use this to quickly select a subdirectory into which to switch the Directory Container. Context menu commands affecting containers as a whole: Icon switches the container to Icon view; the object's name appears below its icon. Name switches the container to Name view; the object's name appears beside its icon. Text switches the container to Text view. Text view is the fastest view for a container to maintain, but provides the least information on the objects it contains. Details switches the container to Details view. Details view shows a great deal of information on the objects it contains, including file sizes, dates, and times, but it is the slowest view for a container to maintain. Mini Icons is a toggle controlling whether icons are shown full size or in miniature in views that show icons. The Details Setup submenu allows you to control what is shown in a Details view. Each possible field in the details view for the drive type is shown. If the field is checked, FM/2 will show it. If not, it won't. Set the current view to Details view and you can see the changes as they occur. Rescan rescans the directory associated with a container, or the drive from the current object down in a tree container. FM/2 tries very hard to keep all its windows up to date, but things outside FM/2 can cause changes that FM/2 cannot know about automatically. This command will ensure that your display is current. The Sort submenu allows you to control how objects are sorted based on several criteria. You can also tell FM/2 to always display directories ahead of or behind files. Note that Last access date and Creation date are only meaningful for HPFS file systems; FAT file systems do not track this information. The difference between Pathname and Filename is only apparent in the Collector. With the former, the entire pathname of the object is used to sort. With the latter, only the filename portion is used to sort. FM/2 maintains separate sort criteria for Drive Tree, Collector, Directory Container and Archive Container windows. Resort resorts items in a container. If you have more than one Directory or Archive Container window open, selecting a new sort type only causes the container in which you requested the context menu to resort itself (although the change will affect all future rescans, resorts and insertions in that type of container). This command lets you resort a container so that the new sort type is reflected in the display. Filter leads to a dialog that lets you set filemasks and attributes for objects to include in the container's display. Parent moves directory containers to the previous (parent) directory. Previous Directory returns the container to the last directory. This is sort of like a one-step "undo." When you close FM/2, its containers remember what directory they were in and it becomes the "previous" directory. Walk Directories leads to a dialog that lets you walk through your directory structures, or recall user-defined directories. The Select submenu gives you many ways to highlight objects in a container. This lets you quickly build sophisticated selection sets of objects upon which you can perform tasks. Context menu commands specific to the Drive Tree container: Check Disk runs PMCHKDSK.EXE on the selected drive. This tests the drive and can correct some deficiencies. This is available only in context menus requested on drives ( root directories). Format Disk runs PMFORMAT.EXE on the selected drive. Formatting a disk will destroy any information already on the disk. This is available only in context menus requested on drives (root directories). Expand expands the tree from the point where the context menu was requested to the bottom of the branch. Collapse collapses the tree from the point where the context menu was requested to the bottom of the branch. Make Directory allows you to create new directories. The name of the directory where you requested the context menu is filled in as a starting point for convenience. Directories may be created many levels deep in one pass. Sizes brings up a dialog showing how many bytes are in the selected directory and its subdirectories. Eject ejects removable media from drives (for instance, opens the door of a CD ROM drive). Partitions calls up FDISKPM.EXE to allow you to modify the partitions on your hard drives. Extreme caution should be exercised; read the help! ═══ 10.1. Save list to file ═══ This command allows you to save the list of selected files to a disk file (or to a printer; enter PRN for the file name to which to save the list). The Save as entry field contains the name of the file to which the list will be saved. The Find button calls up a standard OS/2 open dialog to let you point and click at a file. If the file exists, it will be appended. The listbox below this contains patterns you've saved in the past (use the Add button to add the current pattern (the one in the entry field), and the Del button to remove the currently highlighted pattern from the listbox). You can select one of the patterns in the listbox to avoid retyping it (as you highlight a pattern in the listbox it'll appear in the entry field). The patterns are saved in a file named PATTERNS.DAT, one per line. The Pattern entry field contains a pattern that will be used to format the list. Metastrings may be used to cause parts of a file description to be written where desired (see below). Also note that the pattern is run through a more-or-less standard C string interpreter, so that \x1b would be interpreted as an ESCAPE character, \r\n as a carriage return and linefeed "newline," and \\ is required to get a single '\' character. When everything's set as you want it, click Okay to save the list. Click Cancel if you change your mind. Metastrings and their meanings: %s = subject (description) %S = subject padded to 40 chars %z = file size %Z = file size padded to 13 chars %e = EA size %E = EA size padded to 5 chars %d = last write date %t = last write time %l = longname %L = longname padded to 40 chars %f = filename (no path) %F = filename (no path) padded to 13 chars %p = full pathname %P = directory only (no file) %$ = drive letter %% = percent sign ═══ 10.2. Renaming ═══ When you rename a file sytem object other than by Direct Editing, or a naming conflict arises, you get the Rename dialog. The dialog displays the Source filename and proposed Target filename, along with information about both objects. Below these two fields is a recessed box that attempts to give you directions on what to do (usually to change the target filename -- when renaming, the target name is initially the same as the source name). After entering the new target name, click Okay. If the new target name exists, the display will be updated to reflect the new information. You can, at that point, enter a new name to avoid the conflict or click Overwrite (which will destroy the old target file, keeping in mind that you can't overwrite a file with itself). Skip can be used to skip one file when you are renaming several in one action; nothing will be done for that file. Click Cancel if you change your mind and want to abort the whole thing. ═══ 10.3. Filter container ═══ This dialog allows you to filter what's shown in a container. A filemask or filemasks can be used to filter, and so can file attributes (except for archive listings where attributes are not applicable). In addition, you can set attributes that _must_ be present on the objects to be shown (for instance, if you check Hidden in the "Must-have Attribs" group, only objects with their hidden attribute set will show up). As you enter filemasks they're saved for later redisplay in this dialog's listbox. If a filemask desired is in the listbox you can use it by selecting it (double-clicking it). Multiple filemasks can be used by separating the masks with semi-colons. "No filemask" can be quickly entered by just clicking the Okay button, or "*" can be used. Wildcard matching is not case-sensitive. If a filename does not have a period, an implicit one is automatically appended to the end during matching operations. Some characters have the following special meaning: ? A question mark matches one character, unless what it would match is a period, slash or backslash, in which case it matches no characters. * An asterisk matches characters from the source to the target until it finds a filename character that matches the non-wild character following it in the filemask, or a period, slash, backslash or the end of the filename and/or filemask. Therefore, "*.f?o" matches "anything.foo" but not "anything.foe". Up to 24 masks may be "cascaded" by separation with semicolons. When specifying multiple filemasks, you can use '/' as the first character of a mask to mean _don't_ match this filespec. Exclusions should usually be listed before inclusions to attain the desired effect. Filemask examples: /*.obj;/*.res;* (Show all but *.obj and *.res files) *.c;*.h (Show only C source and header files) *.ico (Show only icon files) * (Show everything) A reminder: CD-ROM files are marked ReadOnly and will not appear in your containers unless you have the ReadOnly attribute on (checked). If you copy these files to your hard drive the ReadOnly attribute goes with them; use the menu command Attribs to reset it. ═══ 10.4. Drive Info ═══ FM/2 will show you information about the drive from which you chose the Info command in a context menu. For writeable drives, you can change the drive's label here by changing the text in the entry field and clicking Okay. The dialog box shows you the type of file system, volume label, total and available sizes of the drive (megabytes, kilobytes and units), tells you how the drive's resources are parceled into units, gives the drive's serial number and some flags. These flags indicate special properties about the drive, like Removable (the drive allows its media to be removed and changed) or Not Writeable (the drive does not allow changes to be written to it). ═══ 10.5. Object Information ═══ This comprehensive dialog tells you just about everything there is to know about a file system object. Note particularly the object's icon. That icon is important. You can get a context menu on it, and you can drag other objects onto it to change the object's icon. If the object is an icon or pointer file (*.ICO or *.PTR) you can use it to change a system pointer (for instance, you could change OS/2's usual arrow pointer to a finger). Request a context menu on the icon (click B2 while the mouse pointer is on the icon). ═══ 10.6. Attributes ═══ This dialog allows you to set the attributes and (optionally) date and time of all objects in a selected group from one popup dialog. The dialog presents you with spinboxes to change the date and time (defaults to current time and date) and checkboxes to set the attributes (ReadOnly, System, Hidden and Archived). You can also modify the selected list of objects by pushing the Select button. If you only want to change the objects' attributes and not their date and time, uncheck the Use Date/Time checkbox. The initial state of the checkboxes and date/time spinbuttons has no relationship to the actual state of the objects being manipulated. This command affects all selected objects at once. The attribute checkboxes are "3-state" checkboxes. This type of checkbox can have three different meanings: reset attribute (cleared box), set attribute (checked box), or ignore attribute (greyed box, "indeterminate state," meaning leave this attribute unchanged). Note that checking the Use Date/Time checkbox and leaving the attribute checkboxes greyed results in a "touch" of the file system objects, bringing selected for the command (making the objects' dates the current date). Click Okay when done, or Cancel to abort. ═══ 10.7. Shadow ═══ FM/2 has the ability to create shadows of objects on your WPS desktop (or in other WPS folders). To create shadows, select objects in an FM/2 window, then select Shadow from a context menu or the Files pulldown submenu (Create Objects submenu). If only one shadow is being created, the shadow is placed directly into the folder you specify. If more than one shadow is being created, FM/2 first prompts you for the name of a folder. This folder is then created on the desktop and the shadows are placed inside that folder. You can move the shadows or folder elsewhere after that. ═══ 10.8. Real Objects ═══ FM/2 has the ability to create objects on your WPS desktop (or in other WPS folders). To create objects, select objects in an FM/2 window, then select Real Objects from a context menu or the Files pulldown submenu (Create Objects submenu). If only one object is being created, the object is placed directly into the folder you specify. If more than one object is being created, FM/2 first prompts you for the name of a folder. This folder is then created on the desktop and the objects are placed inside that folder. You can move the objects or folder elsewhere after that. ═══ 10.9. Compare Directories ═══ The Compare Directories dialog shows you a comparison breakdown of two directories. You can highlight files here and Collect them for later processing. The dialog presents two containers side-by-side. Vertical scrolling of the containers is synched so that scrolling one scrolls both. The files are listed so that they are in alphabetical order, with gaps in the containers where a file exists in one but not the other. This provides easy, at-a-glance comparison of the directories' contents. Several selection/deselection techniques are available via the first row of pushbuttons to enable you to select files based on their comparison. The pushbuttons operate on both containers. You can also select and deselect files in the containers manually with the mouse and/or keyboard. Hint: mouse selection works slightly differently when you hold down the CTRL key while clicking. It is possible to change the directory of a container by direct editing of the container title, and to drag files from the containers. This dialog is reached by link-dropping a directory object onto another directory object. Suggestions: Position the dialog so that FM/2's toolbox is showing. Drag files to the toolbox to edit, delete, etc. ═══ 10.10. Extract from archives ═══ To extract from an archive, select the archive(s), then select Extract from a context menu. FM/2 presents you with a dialog that allows you to select the method of extraction, add masks for files to extract, tweak the command line for exotic settings, and select the extraction directory (the directory to which the files will be extracted. Click Okay to begin extracting from the archive, or Cancel if you change your mind. You can also extract files from the archive in the Archive Container window using that window's menus; double-click an archive file in an FM/2 main window to view the archive listing. ═══ 10.11. Build an archive ═══ To build an archive, select some files, then select Archive from a context menu. You can add files to an existing archive by link-dragging them onto the archive object, or dragging them onto an Archive Container window. FM/2 will ask you for the type of the archive by presenting you with a listbox from which to pick an archiver. After that, another dialog appears to let you modify how the archive will be created. Additional masks may be entered, the archiver command line tweaked, and so forth. Click Okay to create the archive, or Cancel if you change your mind. Note that the archive name may be an existing archive, in which case it's modified by adding the new files. If some of the files are already in the archive, they're replaced. ═══ 10.12. Extended Attributes ═══ This dialog allows you to view and edit text Extended Attributes (EAs) for an object. Binary EAs may be viewed but not edited. There are three types of EAs that FM/2 can view and edit (the only three types that have meaning to humans): ASCII EAs are shown in an entry field. Multi-value single-type EAs are shown in an MLE control if the type is text. Each line represents one 'record' of the EA. Multi-value mult-type EAs are also shown in an MLE control if all types are text. Each line represents one 'record' of the EA. In general, if you don't know the purpose of an EA you shouldn't change it. In particular, EA names beginning with a period (i.e. .TYPE), as these EAs are used by the WPS. An exception is the .SUBJECT EA, for which FM/2 provides a special context menu item. This EA is used to store a simple text description of an object. FM/2's details views can show this description and allow you to direct-edit it. To view a particular EA, select it in the listbox at the top of the dialog. The EA type will be shown on a text field toward the bottom of the dialog, and if it's a human-editable type the appropriate control will appear to display it; otherwise, a hex dump is shown in a listbox. If you edit the EA, a Change button can be clicked to save your changes. You can delete EAs, but do so with extreme caution and at your own risk. Otherwise, click Okay when done. Clicking Cancel will abort any further dialogs that might be pending from a single context menu command. See EAUTIL in OS/2's Command Reference for more information on EAs and how to manipulate them. Note that this dialog is not meant to be a full-featured super-powerful EA editor. You can use Config->Edit Commands to add such an external EA editor to a list of commands that you can run on selected files, if desired. ═══ 10.12.1. Adding an Extended Attribute ═══ To add an extended attribute (EA), enter its name in the top entry field, then select a type for it from the radio buttons. Click Okay to create it, Cancel to abort. OS/2 defines several Standard Extended Attributes (SEAs): .ASSOCTABLE is a multi-value multi-type (MVMT) EA. FM/2 will not create one of these. .CLASSINFO is a binary attribute. FM/2 will not create one of these. .ICON is an icon attribute. FM/2 will not create one of these. .CODEPAGE is an attribute (don't know the type). FM/2 won't make one. .TYPE is an MVMT attribute (see a file object's Type Settings page). .SUBJECT is an ASCII attribute (see a file object's File page). This describes the object. FM/2 makes use of these for you. .COMMENTS is an MVMT attribute (see a file object's third File page). .KEYPHRASES is an MVMT attribute (see a file object's third File page). OS/2 documentation incorrectly describes this as an MVST, but the WPS objects create MVMTs. .HISTORY is an MVMT attribute (see a file object's third File page). .LONGNAME is an ASCII attribute that give the full name of a file when stored on a file system that doesn't support long filenames (like FAT). .VERSION is an ASCII attribute that gives some sort of version information. When creating attributes of your own, you should _not_ begin them with a period. Try using a convention like "JOES.ATTRIBUTE" (yourname.attribtag) to make sure it doesn't conflict with the WPS or any apps you may run. .SUBJECT, .COMMENTS and .KEYPHRASES can be modified, deleted and added by the user without problem. The other standard EAs are the domain of apps and the WPS and should be left alone. ═══ 10.13. Total size of directories ═══ This dialog's container contains a breakdown of disk usage for a directory and its subdirectories. The container is reached by selecting Totals from a tree directory's context menu. The container displays a tree view of a directory and all its subdirectories. Expand and Collapse buttons allow you to quickly open and close branches of the tree. After the container has completely filled, each record displays the object's name and two numbers in parentheses, as in: D:\ADIR (4096k / 32768k) The first number indicates the total number of kilobytes occupied by the directory and any files and subdirectories it contains. The second number indicates the total number of kilobytes occupied by all subdirectories and their files and subdirectories. It is possible for either number to be larger than the other, and possible for both to be 0. The totals reflect the size of files and extended attributes. Due to minimum allocation units on the disk, more space may be physically allocated than is accounted for in the totals. The text field just above the pushbuttons gives you stats that _do_ take allocation units into account. Also be aware that directories containing more than 0 bytes but less than 1024 bytes will be displayed as containing 1k (1 kilobyte, equal to 1024 bytes) so that you know that a 0k figure denotes a truly empty directory. This is a quick way to see where most of your disk space has gone. ═══ 10.14. System Pointer Manipulation ═══ This dialog is reached from the context menu of the icon in a file system object Information dialog. Set the radio button of the system pointer you want to change. Then click Okay. Click Cancel to abort if you change your mind. Changes to system pointers are persistent (they stick around even when FM/2 is no longer running). ═══ 10.15. Object Container ═══ This dialog allows you to select a new folder (directory) to hold objects that FM/2 creates. By default it is . FM/2 tries to find the directory being used as the desktop folder first in the OS/2 system INI, and if that fails, uses the directory \DESKTOP on your boot drive as the "desktop window object" directory -- this is the OS/2 2.1+ default. I suppose future versions of OS/2 could break this and make an update necessary, but IBM seems to think (though won't guarantee) it should always work. A button labelled Desktop allows you to restore the default setting. This will work whether the above fails or not. ═══ 10.16. Quick Tree ═══ The Quick Tree dialog displays a container showing all the subdirectories of the directory currently displayed by a Directory Container window (or one of its subdirectories, depending on how you picked the command). If you select one of these subdirectories, the Directory Container window will switch to look into that directory. You can click Cancel if you change your mind. This might be useful when you want to move to the bottom of a long subdirectory chain in one step. ═══ 11. Folder Button ═══ Folder buttons appear on directory and archive containers at the top center of the window (below the title bar). They provide several shortcuts for their containers. Behavior for each type of container is as follows: Directory containers: B1: Go to parent directory B1+CTRL or B2: Go to previous directory B1+SHIFT: Walk directories B1+ALT: Child window dialog B3 or Chord: Rescan directory B2+CTRL Quick Tree Archive containers: B1 or B2: Walk directories B1+ALT: Child window dialog B3 or Chord: Rescan archive You can also drag a file or directory object onto the folder button. In directory containers, the directory "switches" to "look at" the directory of the dropped object. In archive containers, the extract directory changes to that of the directory of the dropped object. ═══ 12. Archive Container ═══ Archive Container windows presents you with a list of an archive's contents. The menus available here present you with commands which you can perform on selected files and the archive as a whole, as well as the usual configuration of the window's appearance. You get here by double- clicking an archive file in an FM/2 Directory Container window. Archive Container windows have their own sorting method, accessible via a context menu requested over whitespace (the Views menu). Besides the container showing the archive contents and a couple of informational fields above that, there's an entry field at the bottom of the window that shows the current extract directory. This is the directory in which any extracted files will be placed. (Extraction refers to copying files from the archive onto your disk as normal files.) To change the extract directory, enter a new directory into the entry field (if it doesn't already exist you'll get an option to create it), drag a directory onto the entry field, or click the folder button with B1. You can drag files onto the Archive Container's listing to add them to the archive, and you can drag files from the archive to an FM/2 directory window. OS/2's drag and drop "rendering" mechanism would make this painfully slow for any other application's window, as each file is processed individually (imagine extracting each file in an archive by typing a separate command line for each to get an idea how slow it would be). The menu extract items allow optimizing extraction so that only one "pass" needs to be done (note that Files->Extract must also deal with the OS/2 command line length restriction of 1024 bytes, so if you want to extract all the files in a large archive, Files->Extract All is a superior choice), and the internal drag to an FM/2 Directory Container window ... well, cheats, to get around it. You can get a popup menu in the container by pressing B2. Following is a discussion of the pull-down menus: Files Menu View causes FM/2 to extract the file(s) to a temporary directory and display it/them. If, for some reason, the files don't appear when you attempt to view them, try Testing the archive. Extract causes FM/2 to extract the selected file(s) to the extract directory. Extract w/ Dirs causes FM/2 to extract the selected file(s) to the extract directory in such a way that, if directories have been included with the filenames, the directories are recreated. Delete causes FM/2 to delete the selected file(s) from the archive. Exec causes FM/2 to extract all selected files to a temporary directory and then runs the cursored file. If you pick this from a popup menu, that would be the file under the mouse pointer when you requested the popup. This allows you to select DLLs, help files, data files, etc. required to get the application to run correctly as well as the executable file. Print causes FM/2 to extract and print selected files. This uses the FM/2 printing method, not the OS/2 printer objects (see Config->Printer in an FM/2 main window's pulldown menu). Find causes FM/2 to scan the extract directory for any files matching the names of the selected files within the archive and Collect them if found. Virus Scan causes FM/2 to extract the selected files and then run the configured virus checker. See the Program Setup menu option. Extract All extracts all files from the archive to the extract directory. Extract All & Exit does the same thing but closes the archive listing window after starting the extraction. Extract All w/ Dirs does the same thing including any enclosed directories (i.e. files are extracted into the directories they were archived "with," if any, rather than all going into the extract directory). Extract All w/ Dirs & Exit does the same thing but closes the archive listing window after starting the extraction. (Note that if all you want to do to an archive is extract from it, you can do so without ever opening a contents box; just pull up a context menu on the archive in an FM/2 main window and select Extract. This is the fastest and most efficient method of extracting files from an archive.) Test tests the archive's integrity. ═══ 12.1. Editing Archiver Details ═══ This dialog box allows you to edit the details of an archiver. Entry boxes are present for all the twenty one fields represented in ARCHIVER.BB2 (the text file that contains control information about your archivers which FM/2 uses to interface with the archivers). NOTE: The simplest method to ensure that your archivers work properly with FM/2 is to make sure they're in a directory named in your PATH= statement, and check the names of the files to make sure they match what's on your system (i.e. UNZIP.EXE in both ARCHIVER.BB2 and on your hard disk, not UNZIP.EXE in one and UNZIP32.EXE in another). Also note that I don't support DOS archivers, period. In the event that you attempt to list an archive and FM/2 feels you've probably bungled the entry in ARCHIVER.BB2, you'll be given an opportunity to use this dialog to fix the entry. In this case, you'll see the listbox at the right of the dialog filled with the listing of the archive that your archiver made. You can highlight a line and click the << button next to the Start List or End List fields to move the line to that entry field (these are the most common mistakes, and FM/2 cannot find any files if the Start List string is wrong). You can double-click on a listbox line to have FM/2 "parse" it into the Fld# text boxes for you, to make it easier to judge field positions for sizes, dates, and filenames. The filename field in particular is extremely important. If it's too high, FM/2 finds no files. If it's "in range" but wrong, FM/2 gets the wrong fields for filenames. You may still need to refer to your archiver's documentation, or run it to get the help on its command syntax. FM/2 can't do everything for you, but it holds your hand as best it can. Refer to the ARCHIVER.BB2 file that came with FM/2 for additional information and an example. When you've completed editing the archiver's details, click Okay. FM/2 will ask you if you want to rewrite ARCHIVER.BB2 (be sure you save the original copy for its complete notes; FM/2 will back it up one version to ARCHIVER.BAK). If you don't rewrite ARCHIVER.BB2, changes are good only for the current session (handy for testing). You can also get to this dialog box from Select Files' Config submenu. See also: Archiver Details Fields ═══ 12.1.1. Archiver Details Fields ═══ ID This field contains an ID for the archiver; something for human consumption. It's a good idea to include the version number of the archiver for reference. An example might be "LHArc 2.11". Add This field should contain the command that creates and adds files to an archive. An example might be "PKZIP.EXE -a" (NOTE: This example assumes the file is on your PATH (see PATH= in CONFIG.SYS). If it's not, you'd need to give a full pathname, like "C:\UTILS\PKZIP.EXE -a".) Note that commands should include the extension so that FM/2 can check them without guessing. Above this field is a button labeled "See." If clicked, the program named in this field will be run (you'll be given the opportunity to add arguments to the command line) in another window. This lets you check command syntax and archiver version, as well as assuring that FM/2 can find your archiver executables. Move This field should contain the command that moves files to the archive (adds then deletes the file). An example might be "ARC.EXE mwn". Extension This field contains the extension normally associated with files created by this archiver. An example might be "ZOO" for files created by the Zoo archiver. Extract This field contains the command that extracts files from the archive. This command should not delete the files from the archive when it extracts them, and *must* be present for FM/2 to show you a member of the archive (commands other than Extract and List may be left blank if necessary). An example might be "PKUNZIP.EXE -o". Note the "-o" option given; this tells PKUNZIP to automatically overwrite any existing files (FM/2 will check to see if any of the files exist and warn you if so). It's important to always include your archiver's "don't stop for user input" option; some things occur as detached processes and you can't interact with them; the program would be hung, which is uncool. Above this field is a button labeled "See." If clicked, the program named in this field will be run (you'll be given the opportunity to add arguments to the command line) in another window. This lets you check command syntax and archiver version. Note: It may be necessary, in the case of broken archivers like some UNZIPs, to make this the same as the following "Extract w/Dirs" field to get viewing of archive members to work. This is because some archivers will not extract a file that is stored with paths without the path when you ask it to do so. Extract w/Dirs This field contains the command that extracts files from the archive and places them into directories embedded in the archive. An example might be "LH.EXE x /o /s". Signature This field contains the signature for the archive type. There is usually a byte or few in a particular place in any archive that indicates that it is, indeed, an archive of that type. FM/2 uses these signatures to "sniff out" which archiver is used to manipulate the archive. Since these signatures sometimes contain characters which are "unprintable," you can use \x to represent any "strange" characters. A side effect of this is that two backslashes are required to represent a single backslash ("\\" == "\"). To determine what an archiver's signature is, either ask the archiver's author or check several different archives of the type for one or more bytes present in each at the same location, usually near the beginning of the file. This field must be entered and valid for FM/2 to detect this type of archive (see also Sig(nature) Pos(ition)). List This field contains the command to list the archive's contents. This command *must* be present and correct for FM/2 to work properly with this type of archive. An example might be "ZOO.EXE v". Test This field contains the command to test the archive's integrity. An example might be "PKUNZIP.EXE -t". Add with paths This field contains the command to add files to the archiver with their paths (i.e. \FM3\FM3.EXE instead of just FM3.EXE). This can be omitted if the archiver doesn't support the command. An example might be "ZIP.EXE" (Zip defaults to adding paths). Move with paths As above, but moves the files instead of just adding them. An example might be "PKZIP -m -P". Add and recurse Adds files to the archive, with paths, and recurses into subdirectories. An example might be "LH a /s". Delete This field contains the command to delete files from the archive. An example might be "LH.EXE /o /d". Sig(nature) Pos(ition) This field contains a number indicating how many bytes into the file the signature is located. If this number is negative, FM/2 looks from the end of the file instead of the beginning. F(ile)Name Pos(ition) This field tells FM/2 which field on the line of an archive listing is the filename. Fields are numbered from 0. This field must be present and correct for FM/2 to get the right filenames from the archive listing. To understand what "field on the line of an archive listing" means, think of a text line as being broken up into tokens, or words, separated by spaces. These tokens, or words, are fields. Therefore, I like Ike. contains three fields. Field 0 is "I", field 1 is "like", and field 3 is "Ike." OldS(i)z(e) Pos(ition) This field tells FM/2 which field on the line of an archive listing is the old (uncompressed) size of the file. If this isn't available or you don't care about it, you can enter a -1 to disable detection of this field entirely. NewS(i)z(e) Pos(ition) This field tells FM/2 which field on the line of an archive listing is the new (compressed) size of the file. If this isn't available or you don't care about it, you can enter a -1 to disable detection of this field entirely. Date Pos(ition) This field tells FM/2 which field on the line of an archive listing is where the time/datestring is. If this isn't available or you don't care about it, you can enter a -1 to disable detection of this field entirely. NumDateF(ie)lds This field tells FM/2 how many fields comprise the time/datestring. Here's an example of an ARC listing (5.12mpl, command "ARC l"; you may need to widen the help windows for this to look right...): Name Length Date ============ ======== ========= <--this line is start-of-list MAKEFILE 374 28 Nov 89 QSORT.C 14279 29 Nov 89 QSORT.EXE 24629 29 Nov 89 STUFF.H 371 29 Nov 89 ==== ======== <--this line is end-of-list Total 4 39653 Note the filename is in position 0, old length in position 1, and the date starts in position 2, with 3 parts, and there's no new length field (so it'd be -1). Compare that to the archiver entry for ARC 5.12mpl in the "stock" ARCHIVER.BB2 and you should get a feel for what all those fields mean. ═══ 13. Editing Commandline ═══ Enter any optional arguments to the program here as you would on the command line. Remember that, when passing commands to a command processor such as CMD.EXE, like DIR, it's CMD.EXE /C DIR, not just CMD.EXE DIR. Full Screen, Maximized, Minimized, Invisible, Default: control how the program will be run. Default is usually in a window with OS/2 controlling the size of the initial window. Note that PM programs will always run on the desktop in a window and programs marked full screen only will always run in a full screen session. This corresponds to START /FS, /MAX, /MIN, /I or just START. Keep when done: determines whether the window will remain until you close it, or go away when the command completes. It's like START /K. For reasons of safety (too complex to explain briefly) you aren't allowed to Keep a DOS session; this flag is ignored for DOS executables. The Environment MLE control lets you enter environment strings for the program to inherit. Generally speaking, this is only for running DOS programs as any strings entered here are interpreted as DOS settings. For example, IDLE_SECONDS=5 would adjust the DOS setting IDLE_SECONDS to 5. Names of DOS settings are as shown in the Settings notebook for a DOS program. See also (in the online Command Reference CMDREF.INF): CMD.EXE START command ═══ 14. Walk Drives ═══ This dialog lets you pick a directory by "walking" through the directory structure of your drives. It also lets you save and recall user-defined directories. On the left is a listbox containing all your drive letters. If you select a drive, the directories on that drive fill the center listbox. If you double-click one of these directories, any subdirectories of that directory are displayed, as well as a special directory named ".." which is actually the previous (parent) directory. In this manner you can walk to any directory on any drive. The listbox on the right of the window (User List) contains only directories that you add to it. To add a directory, click Add when the desired directory name is displayed in the entry field at the bottom of the window. To delete a directory, highlight it and click Delete. To switch to one of these user-defined directories, highlight it and click Okay or double-click the directory. You can add up to 50 directories. When the desired directory is displayed in the bottom entry field of the dialog, click Okay to exit. Click Cancel to exit without selecting a directory. ═══ 15. Checking Lists ═══ On occasion you may be asked to check a list of objects. You'll be presented with a list of highlighted objects in a listbox. To remove an object from the list, unhighlight it (hint: hold down the CTRL key while clicking to unhighlight a single item). When you've got the list the way you want it, click Okay. Click Cancel to abort the action. Since this dialog may appear for more than one reason, additional information is provided in a multline text field below the listbox. ═══ 16. Internal Viewer/Editor ═══ The internal viewer/editor is an extremely simplistic MLE window. It is strongly recommended that you replace it with a better one via the Config->Program Setup dialog available at any main window. The internal viewer/editor creates a window for each file being viewed/ edited. The Windows->Dialog dialog can be used to quickly close several windows at once or find a particular window and bring it to the front. Note that when saving files the editor formats the file so that it appears as it does in the MLE. The appearance of a file can be different in the MLE or in the created disk file depending on various settings under Config->Format Control, notably Wrap. Be sure you have these settings right for the way you want the resultant file to look. When the viewer/editor is in readonly mode (viewing), several menu items are disabled to prevent you from changing the file by accident. ═══ 16.1. Codepages ═══ FM/2 will allow you to change the codepage (character set) in use in the internal viewer by selecting a codepage from the listbox. The codepage must be one of those supported in your CONFIG.SYS (see CODEPAGE in the online OS/2 command reference). ═══ 17. Hints ═══ To set the icon of a file or directory, pick Files->Info, then drag an icon file onto the icon in the Information dialog and drop it. (Alternatively, check the "Link sets icon" toggle and link-drag icon files (or files with .ICON EAs) onto the object you want to change.) To change a system pointer, pick Files->Info to get the Information dialog for the file containing the new pointer, then request a context menu on the icon in the Information dialog. To open a new directory container, try Files->Open on any directory object (^o accelerator), or check the "Double click opens" toggle and double-click a directory object in the tree. To set the label of a drive, pick Files->Info on the root of the drive in the Drive Tree container (you'll find Format and Chkdsk in that menu, too). Remember, when using the internal editor (but don't, use your favorite editor instead), FM/2 saves the file as it appears in the MLE. If you don't want long lines wrapped (such as when editting CONFIG.SYS), turn wrap OFF before saving. If you want to change the fonts used in the Walk Directories dialog, drop a new font from the Font Palette onto a blank area of the dialog (not a control). The new font will be used in the directory listboxes and path entry field the next time you use the dialog. If you want to use FM/2 fast, I mean really fast, the best way to do it is to learn the accelerator keys and drag and drop, then keep one hand on the mouse and one on the keyboard. If you'd like FM/2 2.x to look like 1.x, you can get close. From a virgin installation, open FM/2 and then open two Directoy Container windows (Open->FM/2 Window from a context menu on a directory object in the Drive Tree window). Open the Settings notebook (Config->Settings) and check the "Save dir window state" toggle on the "Windows" page. Adjust Drive Tree height and width as desired. Close FM/2. The next time you open FM/2, it'll have the Drive Tree and two open Directory Containers set to the same directories they were when you left it, similar to FM/2 1.x in Split view. When you double-click on a directory object in the Drive Tree, the last Directory Container you used will switch to that directory. ═══ 18. Registration ═══ To register FM/2 (required after an initial 30 day evaluation period), send $40.00 US for a personal registration, $80.00 US for a commercial registration to: M. Kimes 542 Merrick Shreveport, LA 71104 USA (BBS Number: (318)222-3455) (Fidonet address: Fidonet#1:380/16.0) (Compuserve: 74601,1327 or GO OS2SHARE for FM/2 support) There's a REGISTER.TXT file in the distribution archive to help you make sure you provide the right information to get your personalized registration as you like it. Registration involves a registration number generated from the information you provide and a few other variables you'll receive along with it. You can then use the online registration dialog to register your copy of FM/2. Registration entitles you to free upgrades for at least one year from the time your FM/2 registration number was mailed. If you order the optional diskette package ($10.00 more), you also get a copy of the newest verison of FM/2 and a registration program you can run to avoid having to fill in the online registration dialog (this registration is retained even if you accidentally delete FM3.INI!). However, I do not recommend that overseas users order the new disk, as the postal service seems to quickly lose anything that's not in a standard sized envelope if it crosses a large body of water -- perhaps it makes the planes too heavy (grumble). Allow 4-6 weeks for delivery via Snail Mail if you order the diskette; serial numbers can be sent almost immediately if you include a Compuserve address. Feel free to use the unregistered version while you wait, without guilt. FM/2 may also be registered on CIS (go SWREG). It's database number is 2859. Note that only personal registrations may be obtained from CIS. ═══ 18.1. Online Registration ═══ If your copy of FM/2 is unregistered, the main window has a Register command. Selecting this command leads to a dialog that allows you to apply the information that you sent in when registering FM/2. In the mail you received a registration number, date and version number. Insert these into the appropriate fields (Reg. Number:, Date: and Version: respectively). The Name: and Address: fields are identical to those you mailed in with your check when registering; fill them in exactly as you did when registering. The Nodes: field is how many copies you registered; normally this would be one (commercial users who ordered multiple registrations may be able to fill in more than one for this to allow more than one copy to run concurrently). If you ordered a commercial registration, check the Commercial checkbox. Finally, press the [Enter] key or click Okay. If you filled in the fields appropriately, FM/2 tells you that you are now registered and the Register command vanishes from the main menu. Check the About box under the Help menu. And thanks for registering FM/2! ═══ 19. OS/2 error list ═══ Following are a list of errors you might occassionally see from OS/2, and what they mean: 2 ERROR_FILE_NOT_FOUND File not found. 3 ERROR_PATH_NOT_FOUND Path not found. 4 ERROR_TOO_MANY_OPEN_FILES Too many open files (no handles left). 5 ERROR_ACCESS_DENIED Access denied. 6 ERROR_INVALID_HANDLE Invalid handle. 11 ERROR_BAD_FORMAT Invalid format. 15 ERROR_INVALID_DRIVE Invalid drive specified. 16 ERROR_CURRENT_DIRECTORY Attempting to remove current directory. 18 ERROR_NO_MORE_FILES No more files. 19 ERROR_WRITE_PROTECT Attempt to write on write-protected diskette. 20 ERROR_BAD_UNIT Unknown unit. 21 ERROR_NOT_READY Drive not ready. 23 ERROR_CRC Data error (CRC). 25 ERROR_SEEK Seek error. 26 ERROR_NOT_DOS_DISK Unknown media type. 27 ERROR_SECTOR_NOT_FOUND Sector not found. 28 ERROR_OUT_OF_PAPER Printer out of paper. 29 ERROR_WRITE_FAULT Write fault. 30 ERROR_READ_FAULT Read fault. 31 ERROR_GEN_FAILURE General failure. 32 ERROR_SHARING_VIOLATION Sharing violation. 33 ERROR_LOCK_VIOLATION Lock violation. 34 ERROR_WRONG_DISK Invalid disk change. 35 ERROR_FCB_UNAVAILABLE FCB unavailable. 36 ERROR_SHARING_BUFFER_EXCEEDED Sharing buffer overflow. 50 ERROR_NOT_SUPPORTED Network request not supported. 65 ERROR_NETWORK_ACCESS_DENIED Access denied. 80 ERROR_FILE_EXISTS File exists. 82 ERROR_CANNOT_MAKE Cannot make directory entry. 84 ERROR_OUT_OF_STRUCTURES Too many redirections. 85 ERROR_ALREADY_ASSIGNED Duplicate redirection. 88 ERROR_NET_WRITE_FAULT Network device fault. 99 ERROR_DEVICE_IN_USE Device in use. 107 ERROR_DISK_CHANGE Insert drive B disk into drive A. 108 ERROR_DRIVE_LOCKED Drive locked by another process. 110 ERROR_OPEN_FAILED Open/create failed due to explicit fail command. 112 ERROR_DISK_FULL Not enough space on the disk. 113 ERROR_NO_MORE_SEARCH_HANDLES Cannot allocate another search structure and handle. 118 ERROR_INVALID_VERIFY_SWITCH Invalid value passed for verify flag. 123 ERROR_INVALID_NAME Illegal character or bad file-system name. 124 ERROR_INVALID_LEVEL Non-implemented level for information retrieval or setting. 125 ERROR_NO_VOLUME_LABEL No volume label found with DosQFsInfo command. 130 ERROR_DIRECT_ACCESS_HANDLE Handle operation invalid for direct disk-access handles. 131 ERROR_NEGATIVE_SEEK Attempting seek to negative offset. 132 ERROR_SEEK_ON_DEVICE Application trying to seek on device or pipe. 133 ERROR_IS_JOIN_TARGET Drive has previously joined drives. 134 ERROR_IS_JOINED Drive is already joined. 135 ERROR_IS_SUBSTED Drive is already substituted. 136 ERROR_NOT_JOINED Cannot delete drive that is not joined. 137 ERROR_NOT_SUBSTED Cannot delete drive that is not substituted. 138 ERROR_JOIN_TO_JOIN Cannot join to a joined drive. 139 ERROR_SUBST_TO_SUBST Cannot substitute to a substituted drive. 140 ERROR_JOIN_TO_SUBST Cannot join to a substituted drive. 141 ERROR_SUBST_TO_JOIN Cannot substitute to a joined drive. 142 ERROR_BUSY_DRIVE Specified drive is busy. 143 ERROR_SAME_DRIVE Cannot join or substitute a drive to a directory on the same drive. 144 ERROR_DIR_NOT_ROOT Directory must be a subdirectory of the root. 145 ERROR_DIR_NOT_EMPTY Directory must be empty to use join command. 146 ERROR_IS_SUBST_PATH Path specified is being used in a substitute. 147 ERROR_IS_JOIN_PATH Path specified is being used in join. 148 ERROR_PATH_BUSY Path specified is being used by another process. 149 ERROR_IS_SUBST_TARGET Cannot join or substitute drive having directory that is target of a previous substitute. 154 ERROR_LABEL_TOO_LONG Volume label too big. 161 ERROR_BAD_PATHNAME Bad path name passed to exec. 166 ERROR_UNC_DRIVER_NOT_INSTALLED Default redir return code 167 ERROR_LOCK_FAILED Locking failed. 168 ERROR_SWAPIO_FAILED Swap IO failed. 169 ERROR_SWAPIN_FAILED Swap in failed. 170 ERROR_BUSY Busy. 192 ERROR_EXE_MARKED_INVALID EXE marked invalid - link detected errors when application created. 193 ERROR_BAD_EXE_FORMAT Bad EXE format - file is DOS mode program or improper program. 206 ERROR_FILENAME_EXCED_RANGE File name or extension greater than "8.3" characters. 211 ERROR_INFO_NOT_AVAIL File system information not available for this file. 212 ERROR_LOCKED Locked error. 250 ERROR_CIRCULARITY_REQUESTED Renaming a directory that would cause a circularity problem. 251 ERROR_DIRECTORY_IN_CDS Renaming a directory that is in use. 252 ERROR_INVALID_FSD_NAME Trying to access nonexistent FSD. 253 ERROR_INVALID_PATH Bad pseudo device. 254 ERROR_INVALID_EA_NAME Bad character in name, or bad cbName. 255 ERROR_EA_LIST_INCONSISTENT List does not match its size, or bad EAs in list. 256 ERROR_EA_LIST_TOO_LONG FEAList > 64K-1 bytes. 259 ERROR_NO_MORE_ITEMS DosQFSAttach ordinal query. 260 ERROR_SEARCH_STRUC_REUSED DOS mode findfirst/next search structure reused. 263 ERROR_INVALID_ATTR Invalid attribute. 266 ERROR_CANNOT_COPY Cannot copy. 267 ERROR_DIRECTORY Used by DOSCOPY in doscall1. 268 ERROR_OPLOCKED_FILE Oplocked file. 270 ERROR_VOLUME_CHANGED Volume changed. 275 ERROR_EAS_DIDNT_FIT EAS didnt fit.